package net.zjitc.service.Impl;

import net.zjitc.dao.CartDao;
import net.zjitc.dao.Impl.CartDaoImpl;
import net.zjitc.pojo.CartItem;
import net.zjitc.service.CartService;
import net.zjitc.utils.CommonUtils;

import java.util.List;

/**
 * Created by Administrator on 2017/11/2.
 */
public class CartServiceImpl implements CartService {
    CartDao dao=new CartDaoImpl();
    public List<CartItem> findByUid(int uid) {
        return dao.findByUid(uid);
    }

    public void add(CartItem cartItem) {
        //在增加之前，判断数据库中是否有这个商品条目， pid  uid
        // 如果有，直接修改它的数量，
        // 如果没有，直接添加新的条目
        CartItem _cartItem=dao.findByPidAndUid(cartItem.getProduct().getPid(),cartItem.getUser().getUid());
        if(_cartItem==null) {
            //没有就新增加
            cartItem.setCartid(CommonUtils.getUUID());//设置主键
            dao.add(cartItem);
        }
        else
        {
            //有的话就修改数量
            int total=cartItem.getQuantity()+_cartItem.getQuantity();
            _cartItem.setQuantity(total);
            dao.update(_cartItem);
        }
    }

    public void removeCart(String pid) {
        dao.removeCart(pid);
    }

    public void clearCart(int uid) {
        dao.clearCart(uid);
    }
}
